<?php

class Helper
{

  /**
   *
   * @param string $nombre
   * @param string $tamano
   * @return string HTML
   */
  public static function tituloEncabezado($nombre, $tamano)
  {
    $str = '
        <div class="tituloAbm" style="width: ' . $tamano . 'px;">' . $nombre . '</div>    
        ';
    return $str;
  }

  /**
   * @param string $nombre
   * @param string $tamano
   * @param string $id
   * @param string $clase
   * @return string  HTML
   */
  public static function filaTabla($nombre, $tamano, $id, $clase = "")
  {
    $str = '
        <div id="' . $id . '" class="columnaAbm ' . $clase . '" style="width: ' . $tamano . 'px;">' . $nombre . '</div>    
        ';
    return $str;
  }

  /**
   *
   * @param string $etiqueta
   * @param string $tamano
   * @param string $valor
   * @return string HTML
   */
  public static function entradaTextoHorizontal($etiqueta, $tamano, $valor, $id = "", $cssClass = "")
  {
    $str = '';
    $str.='
        <div class="entradaHorizontal">    
        ';
    if ($etiqueta)
    {
      $str.='<div class="contenedorEtiqueta">';
      $str.='<label for="' . $id . '" class="etiquetaAbm">' . $etiqueta . '</label></br>';
      $str.='</div>';
    }
    $str.='
        <input class="' . $cssClass . '" id="' . $id . '" name="' . $id . '" type="text" class="entradaTextoHorizontal" style="width: ' . $tamano . 'px;" value="' . $valor . '"/> 
        ';
    $str.='
        </div>    
        ';
    return $str;
  }

  /**
   *
   * @param string $etiqueta
   * @param string $tamano
   * @param string $valor
   * @param string $id
   * @param string $cssClass.[Opcional] Clases css separadas por espacio.
   * @return string HTML
   */
  public static function entradaTextoVertical($etiqueta, $tamano, $valor, $id, $cssClass = "", $disabled = "")
  {
    $deshab = $disabled != "" ? 'disabled="disabled"' : "";
    $str = '';
    $str.='
        <div class="entradaVertical">    
        ';
    if ($etiqueta)
      $str.='<label for="' . $id . '" class="etiquetaAbm">' . $etiqueta . '</label></br>';
    $str.='
        <input ' . $deshab . ' type="text" id="' . $id . '" name="' . $id . '" class="entradaTextoHorizontal ' . $cssClass . '" style="width: ' . $tamano . 'px;" value="' . $valor . '"/> 
        ';
    $str.='
        </div>    
        ';
    return $str;
  }

  public static function entradaTextoVerticalChica($etiqueta, $tamano, $valor, $id, $cssClass = "", $disabled = "")
  {
    $deshabilitado = $disabled != "" ? 'disabled="disabled"' : '' .
            $str = '';
    $str.='
        <div class="entradaVerticalChica">    
        ';
    if ($etiqueta)
      $str.='<label for="' . $id . '" class="etiquetaAbm">' . $etiqueta . '</label></br>';
    $str.='
        <input ' . $deshabilitado . ' type="text" id="' . $id . '" name="' . $id . '" class="entradaTextoHorizontal ' . $cssClass . '" style="width: ' . $tamano . 'px;" value="' . $valor . '"/> 
        ';
    $str.='
        </div>    
        ';
    return $str;
  }

  public static function checkBoxHorizontal($etiqueta, $id = "", $cssClass = "", $cssClassDiv = "", $check = "")
  {
    $str = '';
    if ($cssClassDiv)
      $str.='
            <div class="' . $cssClassDiv . '">    
            ';
    else
      $str.='
            <div class="entradaHorizontal">    
            ';
    if ($etiqueta)
    {
      $str.='<div class="contenedorEtiqueta">';
      $str.='</div>';
    }
    $str.='
        <input class="' . $cssClass . '" id="' . $id . '" name="' . $id . '" type="checkbox"';
    if ($check == 1)
      $str.=' checked="checked" ';
    $str.='class="entradaTextoHorizontal"/><label for="' . $id . '" class="checkBox">' . $etiqueta . '</label> 
        ';
    $str.='
        </div>    
        ';
    return $str;
  }

  public static function checkBoxVertical($etiqueta, $id = "", $cssClass = "", $cssClassDiv = "", $check = "")
  {
    $str = '';
    if ($cssClassDiv)
      $str.='
            <div class="' . $cssClassDiv . '">    
            ';
    else
      $str.='
            <div class="entradaVertical contenedor-checkbox">    
            ';
    if ($etiqueta)
    {
      $str.='<div class="contenedorEtiqueta">';
      $str.='</div>';
    }
    $str.='
        <input class="' . $cssClass . '" id="' . $id . '" name="' . $id . '" type="checkbox"';
    if ($check == 1)
      $str.=' checked="checked" ';
    $str.='class="entradaTextoHorizontal"/><label for="' . $id . '" class="checkBox">' . $etiqueta . '</label> 
        ';
    $str.='
        </div>    
        ';
    return $str;
  }

  /**
   *
   * @param string $etiqueta
   * @param string $tamano
   * @param string $valor
   * @param string $id
   * @param string $cssClass.[Opcional] Clases css separadas por espacio.
   * @return string HTML
   */
  public static function entradaPasswordVertical($etiqueta, $tamano, $valor, $id, $cssClass = "")
  {
    $str = '';
    $str.='
        <div class="entradaVertical">    
        ';
    if ($etiqueta)
      $str.='<label for="' . $id . '" class="etiquetaAbm">' . $etiqueta . '</label></br>';
    $str.='
        <input type="password" id="' . $id . '" name="' . $id . '" class="entradaTextoHorizontal ' . $cssClass . '" style="width: ' . $tamano . 'px;" value="' . $valor . '"/> 
        ';
    $str.='
        </div>    
        ';
    return $str;
  }

  /**
   *
   * @param type $etiqueta
   * @param type $alto
   * @param type $ancho
   * @param type $valor
   * @param type $id
   * @return string 
   */
  public static function textAreaHorizontal($etiqueta, $alto, $ancho, $valor, $id)
  {
    $str = '';
    $str.='
        <div class="entradaHorizontal">    
        ';
    if ($etiqueta)
      $str.='<label for="' . $id . '" class="etiquetaAbm">' . $etiqueta . '</label></br>';
    $str.='
        <textarea name="' . $id . '" id="' . $id . '" class="entradaTextoHorizontal" ';

    $str.= is_numeric($ancho) && $ancho > 0 ? 'style="width:' . $ancho . 'px"' : '';
    $str .= ' rows="' . $alto . '">' . $valor . '</textarea> 
        ';
    $str.='
        </div>    
        ';
    return $str;
  }

  /**
   *
   * @param string $etiqueta
   * @param array $valoresKeyValues Ejemplo: $valores[0]["key"] = id, $valores[0]["value"] = nombre
   * @param type $id
   * @param string $ancho
   * @param string $selected
   * @return string 
   */
  public static function selectVertical($etiqueta, $valoresKeyValues, $id, $name, $ancho = "150", $selected = "")
  {
    $str = '';
    $str.='
        <div class="entradaVertical">    
        ';
    if ($etiqueta)
      $str.='<label class="etiquetaAbm">' . $etiqueta . '</label></br>';
    $str.='
        <select id="' . $id . '" name="' . $name . '" class="entradaSelectVertical" style="width: ' . $ancho . 'px;" >
        <option value>Seleccione</option>';
    foreach ($valoresKeyValues as $valor)
    {
      $seleccionado = ($selected == $valor["key"]) ? " selected=\"selected\" " : " ";
      $str .= '<option value="' . $valor["key"] . '"' . $seleccionado . '>' . $valor["value"] . '</option>';
    }
    $str.= '</select>
        </div>    
        ';
    return $str;
  }

  public static function selectHorizontal($etiqueta, $valoresKeyValues, $id, $name, $ancho = "150", $selected = "")
  {
    $str = '';
    $str.='
        <div class="entradaHorizontal">    
        ';
    if ($etiqueta)
      $str.='<div class="etiquetaHorizontal"> <label class="etiquetaAbm">' . $etiqueta . '</label></div>';
    $str.='
        <select id="' . $id . '" name="' . $name . '" class="selectHorizontal" style="width: ' . $ancho . 'px;" >
        <option value>Seleccione</option>';
    foreach ($valoresKeyValues as $valor)
    {
      $seleccionado = ($selected == $valor["key"]) ? " selected=\"selected\" " : " ";
      $str .= '<option value="' . $valor["key"] . '"' . $seleccionado . '>' . $valor["value"] . '</option>';
    }
    $str.= '</select>
        </div>    
        ';
    return $str;
  }

  /**
   *
   * @param type $name
   * @param type $id
   * @param type $valor
   * @param type $dataId. [Opcional] Dato de usuario adicional.
   * @param string $cssClass.[Opcional] Clases css separadas por espacio.
   * @return string HTML
   */
  public static function botonJquery($name, $id, $valor, $dataId = "", $cssClass = "")
  {
    $str = '';
    $str.='
        <div class="boton">
            <input class="button ' . $cssClass . '" data-id="' . $dataId . '" type="submit" id="' . $id . '" name="' . $name . '" value="' . $valor . '" onClick="javascript:;"/>
        </div>
        ';
    return $str;
  }

  /**
   *
   * @param string $nombreGrupo
   * @param string $id
   * @param string $valor
   * @param string $valorMostrado
   * @param string $checked
   * @return string HTML 
   */
  public static function radioButtonHorizontal($nombreGrupo, $id, $valor, $valorMostrado, $checked = "")
  {
    $str = '';
    $str.='
        <div class="entradaHorizontal">
            <input type="radio" id="' . $id . '" name="' . $nombreGrupo . '" value="' . $valor . '" ' . $checked . '/><label for="' . $id . '">' . $valorMostrado . '</label>
        </div>
        ';
    return $str;
  }

  /**
   *
   * @param type $nombreGrupo
   * @param type $id
   * @param type $valor
   * @param type $valorMostrado
   * @param type $data
   * @return string 
   */
  public static function radioButtonVertical($nombreGrupo, $id, $valor, $valorMostrado, $data = "")
  {
    $str = '';
    $dataVal = $data != "" ? "data-val='" . $data . "'" : "";
    $str.='
        <div class="entradaVertical">
            <input ' . $dataVal . ' type="radio" id="' . $id . '" name="' . $nombreGrupo . '" value="' . $valor . '"/><label for="' . $id . '">' . $valorMostrado . '</label>
        </div>
        ';
    return $str;
  }

  public static function hidden($id, $valor)
  {
    echo '<input type="hidden" name="' . $id . '" id="' . $id . '" value="' . $valor . '"/>';
  }

//  public static function selectVertical($etiqueta, $valoresKeyValues, $id, $name, $ancho = "150", $selected = "")
//  {
//    $str = '';
//    $str.='
//        <div class="entradaVertical">    
//        ';
//    if ($etiqueta)
//      $str.='<label class="etiquetaAbm">' . $etiqueta . '</label></br>';
//    $str.='
//        <select id="' . $id . '" name="' . $name . '" class="entradaSelectVertical" style="width: ' . $ancho . 'px;" >
//        <option value>Seleccione</option>';
//    foreach ($valoresKeyValues as $valor)
//    {
//      $seleccionado = ($selected == $valor["key"]) ? " selected=\"selected\" " : " ";
//      $str .= '<option value="' . $valor["key"] . '"' . $seleccionado . '>' . $valor["value"] . '</option>';
//    }
//    $str.= '</select>
//        </div>    
//        ';
//    return $str;
//  }

  public static function selectHorarioVertical($etiqueta, $id, $name, $ancho = "150", $selected = "", $disabled = false)
  {
    $str = '';
    $str.='
        <div class="entradaVerticalChica">    
        ';
    $disable = $disabled ? 'disabled="disabled"' : '';
    if ($etiqueta)
      $str.='<div class="etiquetaVertical"> <label class="etiquetaAbm">' . $etiqueta . '</label></div>';
    $str.='<div class="navHorizontal">
        <select id="' . $id . '" name="' . $name . '" class="selectVertical" style="width: ' . $ancho . 'px;" '.$disable.' >
        <option value>-</option>';
    for ($i = 0; $i < 24; $i++)
    {
      $select = $selected == $i ? "selected='selected'" : "";
      $str .= '<option value="' . $i . '" ' . $select . '>' . sprintf("%02d", $i) . '</option>';
    }
    $str.= '</select></div>
        </div>    
        ';
    return $str;
  }

}

?>
